package com.ys.entity.purchase;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;
import com.alibaba.fastjson.annotation.JSONField;
import com.ys.annotation.YsField;
import com.ys.entity.base.BaseEntity;
/**
*/
@Table(name="TCG_PurchaseAppointOrderProductComponent", catalog="Id")
public class TcgPurchaseAppointOrderProductComponent extends BaseEntity<TcgPurchaseAppointOrderProductComponent> {

	@YsField(nameDataBase="Id", nameJava="id", typeDataBase="bigint")
	private Long id;
	@YsField(nameDataBase="Pid", nameJava="pid", typeDataBase="bigint")
	private Long pid;
	@YsField(nameDataBase="SubCode", nameJava="subCode", typeDataBase="varchar")
	private String subCode;
	@YsField(nameDataBase="SubName", nameJava="subName", typeDataBase="varchar")
	private String subName;
	@YsField(nameDataBase="SubCodeMerge", nameJava="subCodeMerge", typeDataBase="varchar")
	private String subCodeMerge;
	@YsField(nameDataBase="SubBomNumber", nameJava="subBomNumber", typeDataBase="int")
	private Integer subBomNumber;
	@YsField(nameDataBase="SubBomPrice", nameJava="subBomPrice", typeDataBase="decimal")
	private BigDecimal subBomPrice;
	@YsField(nameDataBase="SubReserveNumber", nameJava="subReserveNumber", typeDataBase="int")
	private Integer subReserveNumber;
	@YsField(nameDataBase="SubTotalPrice", nameJava="subTotalPrice", typeDataBase="decimal")
	private BigDecimal subTotalPrice;
	@YsField(nameDataBase="SubPurchaseNumber", nameJava="subPurchaseNumber", typeDataBase="int")
	private Integer subPurchaseNumber;
	@YsField(nameDataBase="SubStorageNumber", nameJava="subStorageNumber", typeDataBase="int")
	private Integer subStorageNumber;
	@YsField(nameDataBase="StateAppointPurchase", nameJava="stateAppointPurchase", typeDataBase="tinyint")
	private Integer stateAppointPurchase;
	@YsField(nameDataBase="StatePurchaseStorage", nameJava="statePurchaseStorage", typeDataBase="tinyint")
	private Integer statePurchaseStorage;
	@YsField(nameDataBase="Status", nameJava="status", typeDataBase="tinyint")
	private Integer status;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="CreateTime", nameJava="createTime", typeDataBase="datetime")
	private Date createTime;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="UpdateTime", nameJava="updateTime", typeDataBase="datetime")
	private Date updateTime;

	public Long getId() {
		return id;
	}
	public TcgPurchaseAppointOrderProductComponent setId(Long id) {
		this.id = id;
		return this;
	}
	public Long getPid() {
		return pid;
	}
	public TcgPurchaseAppointOrderProductComponent setPid(Long pid) {
		this.pid = pid;
		return this;
	}
	public String getSubCode() {
		return subCode;
	}
	public TcgPurchaseAppointOrderProductComponent setSubCode(String subCode) {
		this.subCode = subCode;
		return this;
	}
	public String getSubName() {
		return subName;
	}
	public TcgPurchaseAppointOrderProductComponent setSubName(String subName) {
		this.subName = subName;
		return this;
	}
	public String getSubCodeMerge() {
		return subCodeMerge;
	}
	public TcgPurchaseAppointOrderProductComponent setSubCodeMerge(String subCodeMerge) {
		this.subCodeMerge = subCodeMerge;
		return this;
	}
	public Integer getSubBomNumber() {
		return subBomNumber;
	}
	public TcgPurchaseAppointOrderProductComponent setSubBomNumber(Integer subBomNumber) {
		this.subBomNumber = subBomNumber;
		return this;
	}
	public BigDecimal getSubBomPrice() {
		return subBomPrice;
	}
	public TcgPurchaseAppointOrderProductComponent setSubBomPrice(BigDecimal subBomPrice) {
		this.subBomPrice = subBomPrice;
		return this;
	}
	public Integer getSubReserveNumber() {
		return subReserveNumber;
	}
	public TcgPurchaseAppointOrderProductComponent setSubReserveNumber(Integer subReserveNumber) {
		this.subReserveNumber = subReserveNumber;
		return this;
	}
	public BigDecimal getSubTotalPrice() {
		return subTotalPrice;
	}
	public TcgPurchaseAppointOrderProductComponent setSubTotalPrice(BigDecimal subTotalPrice) {
		this.subTotalPrice = subTotalPrice;
		return this;
	}
	public Integer getSubPurchaseNumber() {
		return subPurchaseNumber;
	}
	public TcgPurchaseAppointOrderProductComponent setSubPurchaseNumber(Integer subPurchaseNumber) {
		this.subPurchaseNumber = subPurchaseNumber;
		return this;
	}
	public Integer getSubStorageNumber() {
		return subStorageNumber;
	}
	public TcgPurchaseAppointOrderProductComponent setSubStorageNumber(Integer subStorageNumber) {
		this.subStorageNumber = subStorageNumber;
		return this;
	}
	public Integer getStateAppointPurchase() {
		return stateAppointPurchase;
	}
	public TcgPurchaseAppointOrderProductComponent setStateAppointPurchase(Integer stateAppointPurchase) {
		this.stateAppointPurchase = stateAppointPurchase;
		return this;
	}
	public Integer getStatePurchaseStorage() {
		return statePurchaseStorage;
	}
	public TcgPurchaseAppointOrderProductComponent setStatePurchaseStorage(Integer statePurchaseStorage) {
		this.statePurchaseStorage = statePurchaseStorage;
		return this;
	}
	public Integer getStatus() {
		return status;
	}
	public TcgPurchaseAppointOrderProductComponent setStatus(Integer status) {
		this.status = status;
		return this;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public TcgPurchaseAppointOrderProductComponent setCreateTime(Date createTime) {
		this.createTime = createTime;
		return this;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public TcgPurchaseAppointOrderProductComponent setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
		return this;
	}

	public static TcgPurchaseAppointOrderProductComponent tcgPurchaseAppointOrderProductComponent(
		Long pid,
		String subCode,
		String subName,
		String subCodeMerge,
		Integer subBomNumber,
		BigDecimal subBomPrice,
		Integer subReserveNumber,
		BigDecimal subTotalPrice,
		Integer subPurchaseNumber,
		Integer subStorageNumber,
		Integer stateAppointPurchase,
		Integer statePurchaseStorage,
		Integer status
			) {
		TcgPurchaseAppointOrderProductComponent entity = new TcgPurchaseAppointOrderProductComponent();
		entity.setPid(pid);
		entity.setSubCode(subCode);
		entity.setSubName(subName);
		entity.setSubCodeMerge(subCodeMerge);
		entity.setSubBomNumber(subBomNumber);
		entity.setSubBomPrice(subBomPrice);
		entity.setSubReserveNumber(subReserveNumber);
		entity.setSubTotalPrice(subTotalPrice);
		entity.setSubPurchaseNumber(subPurchaseNumber);
		entity.setSubStorageNumber(subStorageNumber);
		entity.setStateAppointPurchase(stateAppointPurchase);
		entity.setStatePurchaseStorage(statePurchaseStorage);
		entity.setStatus(status);
		return entity;
	}
}